home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The World of Computer Software
/
The World of Computer Software.iso
/
nt107.zip
/
NTERM.VER
< prev
next >
Wrap
Text File
|
1992-08-06
|
27KB
|
571 lines
Nevil Brownlee
Computer Centre
University of Auckland
Version History for nterm
-------------------------
New Feature Requests:
These will be implemented in a future version of nt; real soon now!
* nt doesn't work properly with Microsoft Windows
* Fix remaining bugs in NCSA TCP error recovery
* Use Waterloo TCP/IP instead of NCSA.
Ver Date New Features / Corrections
10.7 6 Aug 92 Implement 14400 as a COM line speed.
Fix bug in FTP daemon: transfer mode is now correctly
shown as ASCII or BINARY.
Fix bug introduced at 10.6: SET options with optional
parameters can be separated by commas.
10.6 3 Aug 92 Make nt use the terminal type specified in CONFIG.TEL,
e.g. termtype="au-pc". It was always set to
"vt-102" in earlier versions.
Fix bug in parser so that \" and \' produce quote
and apostrophe in input strings.
Fix bug in parser which caused nt to crash if it
didn't find a keyword (especially noticeable if
a number or control character was entered at the
nt> prompt).
Implement command-line editor for keyboard input
to nt. Arrow keys, home, end, backspace, insert,
del behave as usual. Esc clears line. Any control
char is treated as a C-Z, and will exit nt.
De-implement the A-D (up-line dump) keyboard command.
This used to send the screen buffer to the host.
Implement a 'disable host input' toggle. A-D will
effectively disconnect nt from the remote host,
A-D again will reconnect it. This is a per-session
toggle.
Make the XON/XOFF toggle (C-S/C-Q) a per-session toggle.
Make a quieter 'beep' - nt now uses 440 Hz for 0.2s,
instead of the normal BIOS 0.5s beep.
Fix bug in 'clear to end-of-line/end-of-screen' routine,
which caused nt to crash if auto-wrap was off and
the cursor was at end-of-line.
Fix bug in REVERSE BOLD which caused 'reset all' to
leave vt terminal in bright mode.
10.5 1 Mar 92 Improve error recovery in TCP (needed to make nt
work reliably through PCRouter).
10.4 13 Jan 92 Extend NCSA ARP handler to assume that any gateway
can be reached directly. This provides a way of
telling it about directly connected subnets.
Fix bungle with ?/ and ~` shift handling; these
are controlled by left and right shift, but not
by Num Lock or Caps Lock!
10.3 10 Jan 92 Implement 'printer controller' mode for vt terminals.
esc [ 5 i turns printer controller on; characters
are printed (via bios int 0x17) instead of being
sent to the screen until the sequence esc [ 4 i is
recognised.
10.2 7 Jan 92 Fix NCSA ethernet driver bug. dlayersend() adds
two null bytes to packet; this is OK when sending
from a fixed buffer (where there is enough space),
but not when re-sending a received packet (where the
next two bytes are the length of the next received
packet). Corrected by adding two empty bytes onto
each received packet in the pds and decnet drivers.
Implement better measurement of round-trip time and
estiamtion of variance in it. Use the variance as
a multiplying factor in computing TCP's receive
timeout (as per RFC 1122).
Increase the connect timeout in the config.tel file
from 30 ticks to 185 ticks (about 10s). Connect
and retry times in config.tel are in ticks, not
seconds (as the comments there say).
First character from keyboard was being lost when starting
a session. This was caused by not initialising nt's
shift status.
10.1 1 Oct 91 Move to using NCSA Telnet 23.3 code. We hope
this will reduce the number of times sessions freeze.
Fix ascii mode for ftp. RFC959 says ascii mode
should use CR LF as the record separator.
For __TURBOC__ bkgr.c opens the files in binary mode,
hence it does not do LF to CR LF translations -
(The MSC version opens the file in O_ASCII mode, which
makes the C run-time ruoutines translate to LFs!)
Implement nt> SET HELP-PROMPT [ON,OFF] command.
HELP on (the default) displays 'A-? for help'
on the status line when the first session starts.
10.0 3 Sep 91 Fix bungle with ?/ and ~` shift handling; these
Should be controlled by Shift, not Num Shift!
Use environment variable 'nt' to specify where
configuration files are located. nt looks for
files in the current directory, in the directory
specified by the nt variable, then down the DOS
PATH.
Provide on-line help during sessions. A-? opens a
text file called nt.hlp; PgUp/PgDn are used to
move up/down the help file. Home returns to
the start of the file, other keys return to session.
Access the on-line help from the nt> prompt using
the HELP command.
9.9 4 Aug 91 Provide up to four screen buffers for each session.
Control-Numeric keypad keys are used to swicth
buffers: C-0, C-1, C-2, C-3 for buffers 0,1,2,3.
Change keyboard handling to allow A-? and A-~ as
alternatives to C-] ? and C-] ~.
9.8 20 Jun 91 Cursor positioning: check that specified position
is actually on the screen!
9.7 28 May 91 Implement Telnet Binary Option.
9.6 22 Apr 91 Include files from nt\include instead of nt\nt etc.
This stopped crash when there was no nt.ini file.
Don't start TCP/IP in TCP_state(). Doing so meant
that TCP_IP was started as part of closing all sessions,
so that nt demanded a config.tel file even if only
COM ports had been used.
Correct Telnet bungle which used n_clicks() instead of
time() in engine\util. This clears the 'early
connection failure timeout' problem, which was most
noticeable when starting Telnet sessions from slow
PCs.
Change idle loop in SHOW KEY to wait for 100 ms intervals
while waiting for the user to press a key. waitms()
was returning immediately when asked to wait 50 ms,
since this is less than one clock tick. Hence SHOW
KEY didn't appear to wait for the user at all!
9.5 5 Mar 91 Change name from kpc.exe to nt.exe.
Change prompt from "AU MSDOS Kermit> " tp "nt> ".
Change default .ini file from Kermit.ini to nt.ini.
Change default terminal type from VT200 to VT.
Use BOOTP to determine our IP address. Use the
last identifier in the boot file name as
our terminal type.
Extend string parsing to allow full C syntax, i.e.
\x0A as well as #0x0A. \# will give a literal #;
note that this is NOT a standard C escape sequence.
Implement idle timeouts: SET IDLE ACTIVE mmm times out
after mmm minutes when a session is active,
SET IDLE INACTIVE sss times out after sss seconds
when no sessions are active. nt exits to DOS
after an IDLE timeout.
Implement inter-char delays for TRANSMIT:
SET INTER-CHAR sss produces delays of sss seconds
between TRANSMITted characters.
Fix bug in Kermit: send timeouts were accidently being
multiplied by 1000, thus never being actioned.
9.4 15 Feb 91 Use 23b14 Telnet for TCP support.
Preserve the flags register when entering/leaving
an assembler routine. This fixed the problem
which caused inserts on the screen to generate
bad TCP packets.
9.3 21 Jan 91 Use 23b13 Telnet for TCP support. This version
worked correctly with the PDS IPX driver.
Use huge model for everything; thie required a new
set of ndos.mac macros.
9.2 14 Nov 90 Fix bugs in vte.tdf so that Esc and Scroll Lock keys
work properly in shifted states.
Use 2.3b10 Telnet for TCP support.
Fix handling of Domain Nameserver requests so that user
can open sessions to hosts listed by the nameserver.
Change NCSA dll interface to only open an RARP portal
if ip=RARP. Print a message if dll_open() fails to
open a portal. This may help PCSA users running
server-based disks (which used a DLL portal).
9.1 12 Sep 90 Change DECNET-DLL driver in NCSA Telnet routines to
work properly with DECNET-DOS release 2.1.
2.1 uses interrupt 69 and puts 0Ah in AH,
function code in AL.
Earlier releases used interrupt 6D,
function code in AH.
*** Note that this change requires you to use
a DLL handler which works with Release 2.1 ***
Change 'push-to-DOS' handling back to just invoking
another copy of the DOS shell. Making nterm
resident gave problems when users didi things which
required DOS to use memory from its heap.
*** Users must now use the DOS 'exit' command to
get back to nterm, but C-J or 'push' are
still used to get to DOS ***
9.0 29 Jun 90 Fix graphics mode for EGA+HERCULES display adaptors.
These would only work properly if you SET DISPLAY EGA.
Fix bungle in vtp.tdf which made it completely unusable.
8.9 23 Mar 90 Change vt handling of Set/Reset Reverse Mode.
Properly this should rewrite the screen in reverse
video. Since the screen sttributes are stored in
PC form, this would be a non-reversible transformation.
Therefore we don't do it. nterm used to blank the
screen instead; now it just rings the bell. This
is much more pleasant when using vi on a Unix system.
Implement vt Set/Reset Text Cursor Enable.
The cursor changes to a single line when Cursor Enable
is Reset.
8.8 20 Mar 90 Change autowrap handling to make it the same as a real
vt220, i.e. don't do the CR-LF until a character
is actually written beyond the right margin.
8.7 28 Feb 90 Implement TRANSMIT BREAK command to put a short
break onto the current port.
8.6 28 Feb 90 Implement Kermit TRANSMIT raw file command.
INPUT case and timeout settings are used for TRANSMIT.
Kermit waits for the echo of each character, and
for the 'handshake' string after each line. Pressing
any key will force a timeout.
Correct a bungle in error message handling, which moved
the cursor to the top left cornet of the screen
without clearing it.
8.5 7 Feb 90 Implement TCP/IP Telnet session capabilities. This
has been done by incorporating the TCP/IP support
routines from NCSA Telnet 2.2. To start a Telnet
session from kpc say SET PORT TCP; START xxxx
where xxx is the host name (e.g. ccu1) or IP address
(e.g. 130.216.1.5). The NCSA routines read TCP/IP
configuration data from a file called CONFIG.TEL,
which can be anywhere on the current DOS PATH.
This file contains IP addresses for the user's machine,
and for as many other hosts as required.
C-] H will send the user's IP address as though it
had been entered at the keyboard.
Change session switching. Each terminal session is
now given a session number; there can be up to 10
active sessions, numbered 1..9, 0. A-n will switch
to session n, regardless of whether it is a COM, LAT
or TCP session. A-+ will move to the next active
session, A-- to the previous one.
Implement SET FLOW-CONTROL option. Flow control may be
XON-XOFF (the default) or NONE (in which case C-S
and C-Q are sent and received just like any other
characters).
Improve handling of terminal option setting from kpc.
LOCAL-ECHO, AUTO-WRAP, NEW-LINE, REVERSEBOLD,
EIGHT-BIT-CONTROLS can now be set on or off without
breaking the session; use A-C to return to Kermit,
SET the option, then CONNECT back.
Change 'push to DOS' Kermit Escape sequence to be
C-] J instead of C-] X. It was too easy to hit
A-X by mistake for A-C, thus leaving kpc resident
unintentionally.
Trap Control-C within nterm's keyboard handler, so that
C-C works even with BREAK ON set in DOS.
*** This requires a new set of .TDF files ***.
Fix bug in kpc's SHOW SESSIONS command. This would crash
if there were more than 50 LAT services available on
the network.
8.4 1 Dec 89 Implement Kermit login script handling, as in the big
green book. INPUT, OUTPUT, PAUSE, SET INPUT and
SET TAKE commands are now implemented. The PAUSE
command allows PAUSE UNTIL hhmm as well as PAUSE n.
8.3 21 Nov 89 Change interrupt handling so as to allow nterm to work
properly on the PS/2. From version 7.5 on interrupts
were enabled very early in the line and keyboard
interrupt handlers. This is OK on the PC, where the
interrupts are edge-triggered, but unusable on the
PS/2 where they are level-triggered. The handlers
now make sure that the source of the interrupt is
cleared before telling the 8259 that interrupt
handling is complete. Performance doesn't seem to
be noticeably degraded by this change.
8.2 5 Oct 89 Add 'DEC Command String' parser. Use this to ignore
DCS strings (e.g. downloaded characters) for vt tdfs.
Add ' ' to list of introduce chars for vt 'designate
char set' actions. Use this to ignore char following
' ' for downloaded char sets.
Ignore vt Set/Reset Keyboard Lock sequences.
8.1 26 Jul 89 Change parser to read commands from the keyboard via
DOS function A instead of via fgets. This allows
TSR DOS command editors to be used by kpc, e.g. if
you are running DOSEDIT you can use up-arrow to recall
your last Kermit command.
8.0 24 Jul 89 Correct kermit.c to make SET DEBUG actually use
the parser changes in ver 7.9!
Fix bug in recv.c which caused GET to fail occasionally,
leaving remote set (which blocked CONNECT).
Implement 'push to DOS' by making kpc/nt memory resident,
instead of loading and entering another copy of the
DOS command shell.
7.9 5 Apr 89 Change to using TurboC version 2.0.
Correct parser to make SET DEBUG n work properly.
7.8 1 Mar 89 Implement C-] K. This toggles nt cursor between block
and underscore.
7.7 23 Feb 89 Implement 'Set Compatibility Mode' escape sequences for
vt, vte and vtp.
Change ntntr so as not to use int86. int86 does a DOS
getvector call to find the address of the required
interrupt routine; it's much faster to use Turbo C's
geninterrupt(). Thanks to Owen Mooney for this idea.
Enable interrupts when starting processing for async
and keyboard interrupts. Another idea from Owen.
7.6 15 Feb 89 Improve keyboard handling so as to make nterm work properly
on the Commodore PC-10. If you pressed a key while a
full screen was being written, about 5 characters were
lost. To fix this we clear the level 1 (keyboard)
interrupt as soon as we get it, before processing it
and certainly before passing it to the Commodore BIOS!
7.5 31 Jan 89 Implement ncu, nterm's Configuration Utility.
This makes it easy for technicians to install kpc on
users' PCs.
Implement C-] F. This sends a raw ASCII file.
C-] O allows you to set the Raw File Prompt (RFP).
The file is sent line by line, nt waits for the
remote system to respond with the RFP before sending
the next line.
Fix problems causing crashes when switching between
terminal sessione.
Adjust nt's line/keyboard polling ratio to improve
response to user keystrokes.
Only send the CONINIT message once, at the start of
a new session.
7.4 22 Dec 88 Implement multi-session capability for kpc.
SET PORT or SERVICE to start a new session.
SHOW SESSIONS to show currently active sessions.
CONNECT LATn, COMn, or n to resume session n.
The complete terminal state (including the screen
display) is restored.
NEXT, PREVIOUS to resume the next or previous session.
DISCONNECT LATn or n to terminate a session.
C-] n to switch to session n (within nt).
C-] + for next, C-] - for previous session.
Implement C-] \ to PUSH to DOS from nt.
Allow A-x as an alternative to C-] x.
This works for all kpc control sequences except
C-] \ and C-] ?.
7.3 7 Oct 88 Fix Kermit bug: set key didn't set NewKDs, this
prevented key definitions becoming effective after
user had left CONNECT the first time. Also correct
base for Function keys so that set key Fn works properly.
Implement new versions of the vt terminal definition file:
vte.tdf for the 'enhanced' keyboard,
vtp.tdf for the original PC keyboard.
7.2 19 Jul 88 Fix Kermit bug: records in Kermit packets were being
separated by LF CR instead of CR LF. When sending
to Kermit-32 on VMS this had the effect of inserting
extra CRs after every record.
Implement kpc PUSH command. This enters a new layer
of the DOS command shell; EXIT returns to kpc.
Make nt ignore Num Lock keystrokes which change the
'numeric' shift status.
Open ntlog file as 'wb'. Normal open writes CR LF
instead of LF.
7.1 5 Jul 88 Improve 4014 recovery from bad points
7.0 20 Jun 88 Implement 'DEC-style' keyboard handler. This allows the
alternate keypad to be mapped like a DEC one.
Change nt intro-msg default to null (was '\r").
Make kpc time out if the send buffer fails to empty while
sending packets. Failing to do this caused earlier
versions of kpc to hang while sending files.
Implement LAT: as a port for nt to work through.
This uses the DECNET/DOS LAT driver.
START xxx is the kermit command. It is equivalent to
SET SERVICE xxx; CONNECT
Improve reliability when sending long packets. This is
done by sending them in 105-char blocks, and waiting
SEND PAUSE ms before sending the next block.
Save auto-wrap and auto-CR-mode settings at session start,
restore them on nt_reset.
Implement vt.tdf. This is a terminal definition file
which maps a vt200-style keyboard providing a
'DEC-style' alternate keypad.
Implement Kermit SET commands to set terminal options.
These are AUTOWRAP, AUTO-CR, LOCAL-ECHO,
EIGHT-BIT-CONTROLS; they may be set ON or OFF.
Implement Kermit SET PRINT-SCREEN ON/OFF command.
Setting it OFF disables the PC's PrtSc function -
this is useful if you don't have a printer connected.
Implement Kermit SET KB-STATUS-DISPLAY command.
This displays the Num Shift and Hold state on the screen;
it is essential if you only have a PC keyboard (rather
than an AT of 'enhanced' one).
6.7 14 Mar 88 Implement EGA display option properly in kpc.
Was implemented in nterm at version 6.1 using
"E" for EGA mono and "L" for EGA coLour.
Changed this to "B" for EGA mono (Black-White)
and "E" for EGA colour. We assume that most EGA
users will have colour displays!
6.6 22 Feb 88 Fix bug in nttek/ntgr: vtos transformation could get
divide-by-zero errors; these were reported on the
NEC Multispeed but not on other PC-Compatible machines.
6.5 11 Feb 88 Change handling of DTR and RTS lines. DTR was always reset,
and RTS was set before and reset after sending each
character. Now both DTR and RTS are set when the line
is initialised; they remain set during normal operation.
Note that nt doesn't wait for DSR or CD before sending
the character!
C-] drops DTR and RTS for 5s - the IBM 7171 sees this
as a line drop.
6.4 3 Nov 87 Correct Kermit directory prefixing so that filenames
which include a path aren't prefixied.
6.3 27 Oct 87 Change from Ecosoft C88 to Borland Turbo C. This
produces smaller .EXE files, and (maybe) faster code.
6.2 1 Oct 87 Implement SET KEY in Kermit and Keydef in nt.ini
These allow user to map non-ASCII keys (including
Shifted-Numeric ones) to nterm-style strings.
Fix bug introduced at 6.1 so that Hercules grpahics
work again when using SET DISPLAY "".
Alter nttek so that escape sequences which aren't part of
the V500 set used by Tex dvitovdu turn off non-4014
escape sequences. This allows some plots produced
on our CMS/YALE ASCII system to display and not clear
the screen before user gets a chance to look at it!
6.1 12 Sep 87 Implement EGA (640 x 350) graphics. SET DISPLAY
'E' => EGA_MONO text mode 7, graphics mode F
'L' => EGA_COLOUR text mode 2, graphics mode 10
Rewrite scroll() to use ntscr routines, and to look at
com line after each screen line.
6.0 29 Aug 87 Implement long packets (up to 4000 chars) for Kermit.
Implement Kermit types 2 (12-bit) and 3 (16-bit CRC)
ckecksums.
Reorganise nterm idle loop so as to look at com line
200 times more often than at keyboard. This reduces
the time spent in sysint to < 5%, as well as reducing
the probability of missing a com interrupt.
Implement 38400 bps line speed.
5.7 11 Aug 87 Fix bug in ntasy XON/XOFF handling - XOFF wasn't being sent
until after the next tx interrupt!
5.6 3 Aug 87 Split nthw into ntasy + ntscr (async coms + screen handlers).
Implement new version of ntasy to allow >1 com line to be
used at a time, as well as allowing - via comsetup() -
selection of rx and tx buf sizes, and disabling of
XON/XOFF handling.
Fix handling of ESC J in V200.tdf (clear page AND
home cursor); this bug reported by Mike Newbery, VUW.
5.5 7 May 87 Extend 4014 emulation to support Tex dvitovdu/term=vis500
i.e. implement ESC H,J,K,Y (VT52),
ignore ESC /;;;y (V500 draw rectangle)
and ESC @ (V500 solid fill for rectangles)
CAN (switch V500 back to VT52 mode) already ignored.
Change ntntr to use int86() instead of sysint().
This gives a cleaner interface to the BIOS interrupts.
Fix bug in ntgr: change to pfopen() meant font file wasn't
being read in, hence no alpha chars displayed in
4014 modes.
5.4 29 Apr 87 Implement SET FILE DELETE in kpc. If this flag is set
files are deleted after they are sent.
Fix bugs in REMOTE CWD command, i.e. add new procedures
to encode/decode strings into packets.
5.3 8 Apr 87 Rework Kermit: kpc now has a better set of commands,
they work as described in the big green book, i.e.
"KERMIT - A File Transfer Protocol", Frank da Cruz,
Digital Press, 1987.
Features which didn't work properly in earlier versions
of kpc were: sending binary files, interrupting
file transfer (^X, ^Z etc).
New features include LOCAL and REMOTE CWD commands,
SET SEND and RECEIVE commands, ability to name
SESSION LOG files, ...
5.2 16 Feb 87 Fix bug in kpc epilogue procedure - this accidently
re-enabled comms interrupts for a short time after
cominit had been called. Symptoms varied from none
at all (on my machine) to a corrupted DOS in memory
which forced you to reboot.
Improve asynch comms interrupt handling.
Correct problem of starting kpc without a .ini file.
Fix bug in nterm .ini file parser to handle #0x.. properly.
5.1 29 Jan 87 Implement nterm .ini file to set nterm options on startup.
Search DOS PATH to find the .ini file.
Implement Terminal Description Files. This allows KERMIT
to specify which .tdf file nterm should use, i.e. to
set the terminal type. .tdf files provided for
DEC vt200 (vt200), Visual 200 (v200), ADDS 520 (adds520).
Automatically determine type of installed display adaptor.
Implement Line Feed/New Line mode for vt200.
Use Ins key for Do, Del key for Help on vt200 keyboard.
Implement KERMIT SET PORT.
Improve algorithm for scanning com line and keyboard
so as to improve running speed of nterm.
Reflect settings of G0-G3 properly into GL-GR (vt200).
Make Scroll-Up clear screen to blanks with attributes
off, rather than to current attributes.
Make Screen-Clear depend on Reverse mode, rather than
on Reverse^Inverse.
Ignore Tektronix 4014 'set character size' commands.
Tidy up KERMIT SET/SHOW handling.
4.5 19 Dec 86 Change name of KERMIT profile file to kermit.ini.
Use DOS PATH to find ntdf.fnt and kermit.ini files,
i.e. no longer need to have these files in \aucom.
C-] ? displays most-commonly-used commands on status line.
vt200 Cursor Key Mode escape sequences implemented.
nt -u option suppresses 'syntax error' status messages.
nt -o option provides local echo (i.e. half-duplex).
nt -w option sets auto_wrap on.
Fix error in COM2 addresses (i.e. make COM2 work properly).
Make Reverse Bold work properly.
Fix bug in 'status' display (it always said 7E NS)
Fix bug in 'blinking line' (since this corrupted the
stack it caused unpredictable system crashes).
Correct Tek emulation: never need to reset values
of HiX, LoX, HiY, LoY or Extra bytes.
Only load ntdf.fnt file once.
Make 'Scroll' key work properly.
4.4 12 Nov 86 Fix bug in Tek Graph mode (losing blanks).
Synchronise writing to screen buffer with retrace time
(i.e. get rid of flicker on CGA).
4.3 8 Nov 86 Allow GS and ESC FF to be handled as Tek controls
in Alpha mode.
4.2 5 Nov 86 Fix bug in comfin which destroyed nt environment.
4.1 17 Oct 86 Full Tek 4014 emulation (as allowed by PC hardware).
4.0 Sep 86 Tek 4014 emulation for Text and Graph modes.
3.0 May 86 Table-driven parser for vt200 and V200.
Full (as much as plain PC hardware allows) vt200 emulation.
2.0 Mar 86 First production version. ECO_C88, case statement parser.
vt200 emulation, no eight-bit controls.
1.0 Dec 85 Test version. CI_C86, case statement parsing, vt100 only.
=========================================